uniform sampler2D texture;
void main()
{
  vec4 c = texture2D( texture, gl_TexCoord[0].st );
  // Texture has pre-multiplied alpha - the color does not.
  vec4 color;
  color.rgb = gl_Color.rgb * gl_Color.a;
  color.a = gl_Color.a;
  gl_FragColor = c * color;
}
